1. Field of the Invention
The present invention relates generally to data processing systems and more particularly to a computer implemented method for software and systems management in networked computer environments. Still more particularly, the present invention provides a computer implemented method, data processing system, and computer usable program code for providing policy-based provisioning in a virtualized service delivery environment.
2. Description of the Related Art
Virtualization is being extensively used in the datacenters for the hosting of customer applications since it offers the promise of increased server utilization, and ease of management. However, as solutions become increasingly complex, deployment of each solution requires allocation and provisioning of servers across different application tiers, i.e., multiple software stacks need to be installed across multiple application tiers. By default, datacenters use the fastest provisioning policy, which implies that the deployment of the middleware is started on the server as soon as a server is available. Due to differences in the duration to install different middleware components, installation on the servers in some application tiers completes before others. However, the solution cannot still be configured and enabled until all the servers across the tiers are ready. As a result of using this strategy, servers across different tiers are idle during the provisioning of the solution. Extending a similar strategy for use when the datacenter uses virtualization also results in wasted server utilization.
In the state of the art, two approaches are used for provisioning (1) Provision from scratch in a virtualized environment, and (2) Use of freeze dried Virtual Machine(VM) stacks for hosting of the solutions. In (1), the speed of provisioning the solution is determined by the individual VM configuration, and time to deploy the complete solution is determined by the component that requires the most time to install. Once the provisioning run has started, the VMs are left to run to completion. While the slowest component is installing, the other servers hosting the VM lay idle. In (2), predefined VM images are used to create and start virtual machines. The weakness of this approach is that it requires that various permutation of images to be pre-created and pre-configured for use. This creates a management nightmare whenever any patches for a particular component need to be applied as all images that use that component need to be recreated.